package model;

import java.util.ArrayList;
import java.util.List;

import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

public class CaracValorBD {

	private final String NOME_TABELA = "CARACVALOR";
	private SQLiteDatabase objDados;
	private CaracValor objRegistro;
	
	public CaracValorBD(SQLiteDatabase pObjDados) {
		objDados = pObjDados;
		objRegistro = new CaracValor();
	}	
	
	public Boolean CREATE_TABLE(Boolean pIf_exists) {
		String pSql = "CREATE TABLE ";

		if (pIf_exists)
			pSql += " IF NOT EXISTS ";

		pSql += NOME_TABELA + " ("  + "ID_CARACVALOR INTEGER PRIMARY KEY, "
									+ "ID_CARACTERISTICA INTEGER, "
									+ "VLC_VALOR TEXT)";

		objDados.execSQL(pSql);
		return true;
	}

	public void DROP_TABELA() {
		objDados.execSQL("DROP TABLE IF EXISTS " + NOME_TABELA);
	}

	public void INSERT() {
		ContentValues biblioteca = new ContentValues();
		if (objRegistro.ID_CARACTERISTICA > 0)
			biblioteca.put("ID_CARACVALOR", objRegistro.ID_CARACVALOR);
		biblioteca.put("ID_CARACTERISTICA", objRegistro.ID_CARACTERISTICA);
		biblioteca.put("VLC_VALOR", objRegistro.VLC_VALOR);
		objDados.insert(NOME_TABELA, null, biblioteca);
	}
	
	public List<CaracValor> SELECT(String pCondicao) {
		
		List<CaracValor> list = new ArrayList<CaracValor>();
		Cursor cursor = objDados.query(NOME_TABELA, new String[] { "ID_CARACVALOR",	"ID_CARACTERISTICA", "VLC_VALOR" }, pCondicao, null, null, null, null);
		if (cursor.moveToFirst()) {
			do {
				CaracValor objCarac = new CaracValor();
				objCarac.ID_CARACVALOR		= cursor.getInt(0);
				objCarac.ID_CARACTERISTICA	= cursor.getInt(1);
				objCarac.VLC_VALOR			= cursor.getString(2);
				list.add(objCarac);

			} while (cursor.moveToNext());
		}
		if (cursor != null && !cursor.isClosed()) {
			cursor.close();
		}
		return list;
	}

}